package com.fengye.security.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

import static org.springframework.core.Ordered.HIGHEST_PRECEDENCE;

/**
 * 配置 mvc 请求
 *
 * @author fengyexjtu@126.com
 * @date 2022年04月12日 10:28 AM
 */
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

    /**
     * 处理静态资源
     *
     * @author fengyexjtu@126.com
     * @date 2022/4/12 10:30 AM
     * @param registry ResourceHandlerRegistry
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/webjars/**")
                .addResourceLocations("/webjars/")
                .resourceChain(false); // 处理 webjars 引入的静态资源
        registry.setOrder(1); // 最高优先级
    }

    /**
     * 处理请求映射关系
     *
     * @author fengyexjtu@126.com
     * @date 2022/4/12 10:30 AM
     * @param registry ViewControllerRegistry
     */
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/login").setViewName("login"); // 不带.html 后缀
//        registry.addViewController("/hello").setViewName("hello"); // 不带.html 后缀

        registry.setOrder(HIGHEST_PRECEDENCE); // 最高优先级
    }
}
